草庐IT

Java Swingworker 和多线程

全部标签

android - 工作线程上的 PubNub

TL;DR见下文我的android应用程序的一个核心功能是在前台服务中广播用户的当前位置,该服务在从Activity中解除绑定(bind)后继续运行。在发布到channel和订阅者从channel接收数据方面,我一切正常。这项服务运作良好。我什至制作了一个谷歌地图相机的动画,以跟踪从订阅的消息中收到的位置。我担心的是我收到了这条消息:I/Choreographer:Skipped49frames!Theapplicationmaybedoingtoomuchworkonitsmainthread.我当然研究过这条消息。很多人似乎说它与动画有关,所以我认为它与map有关,因为它是唯一的动

android - 工作线程与后台线程android有什么区别?

任何人都可以通过一些实时示例简要说明我们在哪里使用辅助线程和后台线程。 最佳答案 很简单:在Android中“后台”和“工作”线程是一样的。 关于android-工作线程与后台线程android有什么区别?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/44859531/

java - 如何在Android中的多个线程中更新Realm?

我正在尝试更新多个线程的领域实例。而不是解释一切,我创建了一个流程图,我理解它。在这里:所以问题是当我调用notifyAppWidgetViewDataChanged()时,它不会更新域。我尝试在服务的Realm.OnChangeListener中添加onCreate(),但从主线程更改域时不调用该方法。我还试着从服务的getDefaultRealmInstance()呼叫onGetViewFactory()。同样的问题。 最佳答案 好吧,这是我的“内存效率不高”解决方案:从小部件的服务中,我只重写一个方法来创建工厂实例:@Over

计算机基础概念之进程、线程和协程

Labs导读互联网技术的兴起,让更多的人接触到了计算机编程。进程、线程、协程等作为操作系统中最核心的概念及技术是每位服务器后端开发程序猿都绕不开的。数字化转型时代计算机编程技术越来越普及高级编程语言的封装使得编程变得简单作为代码执行最重要的载体什么是进程、线程一级协程❓本期Labs带大家认识下计算机基础之编程技术的那些事儿~Part01、什么是进程? 进程是操作系统结构的基础,是一次程序的执行;是一个程序及其数据在处理机上顺序执行时所发生的活动,是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的独立单元。初看这段文字回觉得十分抽象,难以理解。以Windows操作系统为例,打开任务管

android - 在 Android 中查找进程线程对资源(CPU 和内存)的使用情况

我有一个多线程应用程序(C++、C和pthread库),我想知道每个线程使用多少资源(CPU和内存)。有没有办法在Android上找到这些详细信息?我试过了$adbshellps-p-t但是,这给出了以下格式的信息,USERPIDPPIDVSIZERSSPRIONICERTPRISCHEDWCHANPCNAMEroot1047631220000c037c0e0000087bcS/initroot200020000c031f11400000000Skthreaddroot320020000c030e5d000000000Sksoftirqd/0root4200-1000991c033fc

java - 线程状态监视器。我该如何调试?是什么原因造成的?

我在Android上进行开发,但我不明白为什么我的一些线程会进入“监控”状态。我读过这可能是因为“同步”问题,但我不确定对象如何不释放他们的锁。任何人都可以帮助解决这个问题,或者您看到我做错了什么吗?是同步对象没有被释放的问题还是我的加载没有正确超时并锁定所有线程?这是我使用同步的方式。privateBitmapgetFromSyncCache(Stringurl){if(syncCache==null)returnnull;synchronized(syncCache){if(syncCache.hasObject(url)){returnsyncCache.get(url);}el

java - 多线程通信: how good is the use of Atomic Variables like AtomicInteger? 为什么没有AtomicFloat?

介绍:我想创建一个多线程Android应用程序。我的问题是线程之间的通信。我阅读了有关线程之间的通信的内容,并且遇到了诸如Looper/Handler设计之类的东西,这似乎非常复杂,还有AtomicInteger之类的原子变量。现在,我使用AtomicInteger作为通信方式,但由于我在Java方面不是很有经验,所以我不确定这对我来说是否不好/是否有更好的解决方案来满足我的特定目的。当我注意到我实际上需要类似AtomicFloat的东西时,我对我的方法也有点怀疑,但它不存在。我觉得我误用了这个概念。我还发现你可以让自己成为一个AtomicFloat,但我不确定我的方法是否正确,或者是

android - 线程 sleep 准确性

我一直在试验各种计时方法的代码。创建延迟的一种方法是使用thread.sleep(millis)运行线程,但可以很好地说明,线程“唤醒”的时间并不完全准确,可能在这个时间之前或之后。然后我遇到一个定义,其中有一个选项可以使用thread.sleep(millis,nanos),其中nanos提供“额外的纳秒精度”。我的问题是,如果thread.sleep()在毫秒内不那么精确,那么添加额外的nano有什么用?添加这个值是否会使sleep方法突然变得更精确,比如强制操作系统更严格,或者在监视时允许更高的优先级?而且,.join()有相同的选项,我假设对thread.sleep()部分的回

java - 是否可以从另一个线程安全地调用 disconnect() 来取消正在进行的 HttpURLConnection?

如果我有一个正在工作线程中接收数据(或即将接收数据)的java.net.HttpURLConnection,调用disconnect()是否安全在另一个线程中连接生命周期的任何时候停止它?我对此感到疑惑,因为我找不到明确记录的方法来中止正在进行的HTTP连接。通过调用Thread.interrupt()中断工作线程将不起作用,因为您从HttpURLConnection获得的InputStream不可中断。我做了一些看起来像这样的实验://MyRequest.run()getsanHttpURLConnectionbycallingsomeUrl.openConnection()MyRe

android - 为什么我的线程不会死掉并导致内存泄漏?

我的一个应用程序累积了很多GC无法拾取和清除的Thread实例。从长远来看,这种内存泄漏会使应用程序崩溃。我不是100%确定它们来自哪里,但我有一种明显的感觉,以下可能是有问题的代码:publicclassUraHostHttpConnectionextendsAbstractUraHostConnection{privateHandleruiThreadHandler=newHandler(Looper.getMainLooper());privateExecutortaskExecutor=newExecutor(){publicvoidexecute(Runnablecomman